package com.cskaoyan.javase.method._1basic;

/**
 * [修饰符列表] 返回值类型 方法名 (形式参数列表){
 *   //方法体
 * }
 * 方法使用细节2:
 *      思考:
 *      方法在调用时传入实参,实参的数据类型必须和形参数据类型保持一致吗?
 *          不是的,只要保持兼容就可以了
 *          什么叫兼容呢? 考虑数据类型的自动类型转换
 *          比如方法要求传入int数值,那么就可以传入int,short,byte,char,因为,short,byte,char可以自动类型转换到int
 *
 *          如果方法要求传入double类型,那么实际可以传入什么类型呢?
 *          所有数值类型的基本数据类型都可以传入了.除了boolean不能传入
 *
 *  举一反三:
 *      1.既然基本数据类型存在自动类型转换,存在不需要完全一致的情况,那么引用数据类型呢?
 *          也是可以的,引用数据类型也可以自动类型转换,面向对象再学.
 *      2.既然方法的实参和形参的数据类型具有这种特点,那么方法的具体返回值和返回值类型呢?
 *          同样具有这个特点.
 *
 * @since 11:20
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        test(10);
        byte a = 100;
        test(a);

        test2(1.0);
        test2(1.0F);
    }

    public static void test(int a) {
    }

    public static void test2(double a) {
    }

    public static int test3() {
        byte a = 1;
        return a;
    }

    public static double test4() {
        byte a = 1;
        int b = 2;
        return b;
    }
}
